【linux/shell实战案例】使用sed提取文件中某一行或几行数据的方法 |
您所在的位置:网站首页 › java读取linux文件 按行 › 【linux/shell实战案例】使用sed提取文件中某一行或几行数据的方法 |
目录 问题背景: 解决方法: 1.sed提取指定的某一行数据,例如第一行、第N行、最后一行 2.sed提取指定若干行区间内的数据,例如第1-10行 3.sed提取特定的某几行数据,例如提取第1行、第3行、第6行 4.sed提取以某些关键字开头或结尾的特定数据行 5.sed提取某一对标签之间包夹的数据 6.sed提取奇数行和偶数行的数据 7.sed输出文本文件的总行数 8.sed打印倒数第二行数据 问题背景:sed简介:(system editor,流文本编辑器) sed是非交互式编辑器,默认不会修改文件,会输出打印到屏幕或文件逐行处理; 所以主要用sed指令来处理行数据,列数据可以使用awk。 解决方法: #输出所有行,等于cat file sed -n 'p' file选项说明: -n:安静模式,只输出被sed处理过的那一行或几行 1.sed提取指定的某一行数据,例如第一行、第N行、最后一行 #输出第一行 sed -n '1p' file #输出第N行 sed -n 'Np' file #输出最后一行 sed -n '$p' file 2.sed提取指定若干行区间内的数据,例如第1-10行 #输出第1-10行 sed -n '1,10p' file #输出第5-10行 sed -n '5,10p' file #输出第10-最后一行 sed -n '10,$p' file #输出从第5行开始及其后面10行(也就是5-15行) sed -n '5,+10p' file 3.sed提取特定的某几行数据,例如提取第1行、第3行、第6行注意这里用分号隔开 #输出第1,3,6行,注意用分号隔开 sed -n '1p;3p;6p' file 4.sed提取以某些关键字开头或结尾的特定数据行注意这里的斜杠以及通配符的使用 #列出以name开头的行 sed -n '/^name/p' file #列出以id结尾的行 sed -n '/id$/p' file 5.sed提取某一对标签之间包夹的数据 #输出A:和A:之间的数据123 file: A: 123 A: sed -n '/A:/,/A:/p' file 6.sed提取奇数行和偶数行的数据注意分号分隔和n,p的顺序 #输出奇数行 sed -n 'p;n' file #输出偶数行 sed -n 'n;p' file 7.sed输出文本文件的总行数 #输出文件的行数 sed -n '$=' file 8.sed打印倒数第二行数据 #输出倒数第二行 sed -n 'x;$p' file
|
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |